26 May 2019

Task management

History / Edit / PDF / EPUB / BIB / 5 min read (~846 words)
time management processes

  • Give it a title
  • Give it at least one label
  • Give it an assignee
  • Decide if it's important or not
  • Decide if it's urgent or not
  • Estimate the effort required to accomplish the task (in hours)
  • Estimate the value the task brings (in $)
  • Give a rough estimate of effort (in hours)
  • Give a description if necessary
  • Set a deadline if possible
  • Set status to Unprioritized

Task creation

Task states

  • Unprioritized: New task are created as unprioritized, so as to avoid having to put them in a state immediately when creating them.
  • Won't do: A task that ends up not being relevant or useful will not be acted further upon and set to "Won't do".
  • Backlog: A task that is not of priority at the moment but something that would be worthwhile to do at some point in the future (although maybe never due to other priorities).
  • Queue: A task with a priority that is not high enough to be done immediately but that should be done in the near future.
  • Scheduled: A task that has been scheduled to be done by a specific date.
  • Today: A task that is scheduled to be done today. Tasks picked from the queue are moved to today.
  • In progress: Tasks that are were in progress yesterday but aren't blocked, waiting, or done are moved back to today, the queue, or the backlog.
  • Blocked: A task that is blocked by something else. The task should be moved back to today when it is unblocked.
  • Waiting: A task that is waiting for something to happen before it can be worked on. The task should be moved back to today when it is unblocked. The difference between a blocked task and a waiting task is that a blocked task is blocked by something that is not under your control, while a waiting task is blocked by something that is under your control.
  • Done: A task that has been completed and does not require further action.

  • Go through the tasks in the Do section, then the Decide section, then Delegate

Use Eisenhower matrix to determine task importance/urgency

  • Tasks that are not important/not urgent are moved to the backlog
  • Tasks that are not important/urgent are delegated to someone else
  • Tasks that are important/not urgent should be scheduled
  • Tasks that are important/urgent should be done ASAP

Using the estimated effort and estimated value of a task, you can compute the return on investment (ROI) of the task as estimated value divided by estimated effort. For example, a task you estimate is worth 100 $ and takes 2 hours to complete will have a ROI of 50 \$/h.

Use the ROI of your tasks to prioritize them. You will want to complete the tasks which are likely to have the best return on investment.

The ROI metric will also give you clues about the task you should probably not spend your time on. If you are paid 50 $/h and a task has a ROI less than 50 \$/h, then it should probably be moved to the backlog and only reconsidered if its ROI changes.

  • Unprioritized tasks should be moved to Queued, given their priority compared to already queued tasks
  • You should attempt to keep the Unprioritized tasks count to 0
  • A task that is Queued should have a deadline date
  • Work on tasks In progress first, then take tasks from Today, then from Queued

Task processing loop

If you've never done task management before, I suggest you do not start by applying all the above at once. First, start by simply recording the tasks you need to get done (title only). Once you've recorded most of the tasks you have to deal with, start giving them an important/urgent assignation. It will help you rapidly determine which tasks should be done and which ones are nice to have, but not critical, or even not really useful if you think about it. Once you are able to have this information for most of your tasks, then you should start giving them effort and value estimates. Once you've reached this point, you will have a much better grasp on the importance of your tasks, as well as their potential impact in terms of value, as well as to the amount of effort it will require from you.

  • Tasks should not remain in the "in progress" state for extended periods of time. After approximately a week in that state, I would suggest re-evaluating whether this task is still in progress or should be moved back into the backlog, queue, scheduled or today state. The same should apply to the waiting and blocked states.

As 2012 ended, I wanted to take a look back at this year and review my computer usage/consumption in order to reduce time wasting activity. That time should be channeled into more meaningful activities like learning a new language, improving my current skills, practicing piano and more.

The following data has been collected from August 11, 2012 to December 31, 2012. There is about 14 days which do not have any data (application was closed).

The data covers my computer usage with over 966.21h of active usage. During the period for which I collected data, the computer was also powered off for 1686.30h and left unused (away) for approximately 58.04h.

If we account 2 months of 31 days + 2 months of 30 days + 20 days (August) - 14 days without data = 128 days of data. This would average to 7.55h/day of active computer usage. The way it is currently "structured" however is that computer usage during the week is about 4-5h/day while on the week-end, it is about 12h/day.

This sounds a bit high, but there's a reason to this. I'm not ACTIVELY using the computer for all that time. In ManicTime, the computer is considered active if the computer is being used at least once within a 60 minutes time frame. This means I could potentially be using the computer for 1 minute (or less) every hour and it would count as an active usage of 1h. But for the sake of this review, I'll consider myself as a computer addict (which I am) and will count every minute as an active minute.

The following top 10 items accounts for 876.18h out of the 966.21h of active usage of the computer.

Application Hours
Google Chrome 457.76
Remote Desktop Connection 179.11
League of Legends (TM) Client 72.69
VLC media player 62.9
HexChat 35.81
Free Alarm Clock 15.02
mRemote 14.9
Sublime Text 2 14.56
Windows Explorer 12.13
Torchlight II 11.3

On first sight we can see that I spend a lot of time browsing the web. I do various things on there and since it is the biggest chunk of my time, it is worth looking at what I do exactly on the web. The following table is the top 10 websites I've spent time on.

Website Hours
www.reddit.com 165.53
www.jolteon.net 19.33
www.youtube.com 17.51
docs.google.com 12.79
-confidential- 12.66
www.twitch.tv 9.34
www.google.ca 8.18
en.wikipedia.org 4.92
www.facebook.com 4.81
mail.google.com 4.08

This covers 259.15h out of 457.76h (56.6%) spent in Chrome. This means that I have a long-tail (a list of many different websites which I visit for a brief period) of 198.61h. The major time consumer here is www.reddit.com, which accounts for 36.2% of my time browsing. Even though reddit is a news/media website (useful for staying up to date with world events, not sure I do that...), it also contains a lot of content which I would categorize as time wasters: funny pictures, pictures of cats, videos as well as discussions about topics of interests (computer science, software engineer, robotics, electronics, etc.). I spent about 1.3h/day during the 128 days for which I collected data, which I find to be quite a lot.

As for the other sites, here's a couple of notes:
www.jolteon.net: This is a bug tracker I use to track new features/bugs where I work. It serves as a personal system for me to track these issues. I use it frequently to update task statuses as well as enter anything that I may have forgotten to add during the day. I also like to review it frequently to remind myself of what is left to work on (and let my mind figure that out while I sleep)
www.youtube.com: I often get on youtube because of reddit. I enjoy watching documentaries which last from 30-45 minutes on average.
docs.google.com: I've spent some time writing documents in Google Docs simply because it allowed me to share them with others so they could review my work.
-confidential-: This is a website I use to manage "things" for work. I generally go there every day and it takes me from 5-15 minutes on average.
www.twitch.tv: Watching streamers of Starcraft 2 and LoL for a while.
www.google.ca: Looks like I spend a lot of time searching...
en.wikipedia.org: Whenever I don't know something about a subject of interest, wiki is a good source (generally...)
www.facebook.com: Checking that everyone I know is still alive
mail.google.com: Because I like spam

If we go back to the applications I use, the next in the list is Remote Desktop Connection. I use Remote Desktop Connection to connect to my PC at work so that I can do some work from home. As you can see, I have spent almost 1.44h/day working remotely. Considering that I am not a "work at home" employee, I find this to be outrageously high. I would like to see this be as close as possible to 0h/day.

Next is League of Legends (TM) Client. I've recently been interested in the game and started to play it on a more regular basis. I would like to keep this at around 1h/day or lower.

I've used VLC media player to watch series as well as movie on my PC. Series are 20-45 minutes while movies varies from 1h40 to 3h40. I'd say that about 225h/year looks like an acceptable amount of time spent on this.

I've stopped using MSN to chat with friends. My main communication channel is now through IRC, for which I use the HexChat client. I want to spend a maximum of 1h/day on communication though.

I'm not too sure why Free Alarm Clock is part of the top 10. I believe this has to do with the note I wrote at the beginning mentioning that ManicTime would consider a program active if there was some movement on the screen in the last 60 minutes. Since Free Alarm Clock was set to show up (and take focus) every hour, it is quite possible that it simply appeared from time to time while I was away and "sucked" the time out of whatever was running in the background.

mRemote is another application I used briefly to do remote desktop. Since it doesn't support multiple monitor remoting, I've stopped using it.

Sublime Text 2 is my text editor of choice. I haven't spent a lot of time in it since August mainly because I haven't been doing any coding at all in the past few months.

Windows Explorer Some time spent searching for files on my PC!

I've played through the whole campaign of Torchlight II, which was pretty awesome! I'd be really happy to try multiplayer with some willing friends to see what the end content is like (single player end of game content was pretty funny, but playing it alone wasn't very satisfying for me).

The important part of this process, other than reviewing what time was spent on this year, is to decide new objectives going forward. This means deciding what should be cut down, reduced, increased or added. For each application I've already determined what was my goal/limits thus I simply need to make sure I follow them. A monthly review should be sufficient.

  • Reduce reddit usage below 1h/day
  • Reduce/cut time spend doing remoting for work
  • Redistribute free time on learning activities and skills improvement